#ifndef __ZEVENT_LOCK_HPP__
#define __ZEVENT_LOCK_HPP__

namespace zevent {

namespace internal {

template <typename TMutex> class Lock {
public:
  Lock() { mutex_.lock(); }
  ~Lock() { mutex_.unlock(); }

private:
  TMutex mutex_;
};

} // namespace internal

} // namespace zevent

#endif